perm filename MSS.MAN[MAN,LCS]20 blob sn#164496 filedate 1975-06-16 generic text, type T, neo UTF8
00100	********  DISPLAYS MUSIC AND DRAWS IT ON THE PLOTTER *******
00200	
00300	TO RUN: SEE LAST PAGE FOR 'RPG' FILES.
00400			(FOR THE PROGRAM TO RUN IT MUST PICK UP SOME SPECIAL
00500			DATA IN MSS,LCS.)
00600	
00700	 <<<<<< SOME GENERAL ADVICE:  'SAVE' THE WORK OFTEN.(SEE PG.5)
00800	
00900		PUT IN ALL NOTES, CLEFS, BEAMS, ETC.(ALL THE THINGS PUT IN
01000		WITH 'SCORE' INPUT) FIRST.  THEN DO ALL 'JUSTIFYING'(PG.7)
01100		OF LINES, IF NEEDED, BEFORE ADDING OTHER WORDS, NUMBERS,
01200		ETC. (THE PROGRAM WILL RUN FASTER AND YOU WILL HAVE THE
01300		FINAL POSITIONS OF THE NOTES DISPLAYED.)
01400	
01500		SEE SECTION ON 'SCORE' INPUT (PG.8)  FOR FIRST STEPS IN INPUT.
01600	
01700	HORIZANTAL SPACING IS ON A SCALE OF 0 TO 200.(SEE END OF PG.4)
01800	
01900	VERTICAL SPACING IS BY NOTE LEVEL NUMBERS.  THE POSITION OF MIDDLE  C
02000	IN  THE  TREBLE  CLEF IS TAKEN AS 1. D=2, G=5, C ABOVE=8, G ABOVE=12,
02100	ETC.  THE B BELOW MIDDLE  C  =0,  A=-1,  G=-2,  ETC.   THUS  VERTICAL
02200	POSITIONS  UP  FROM  MIDDLE C MAY BE THOUGHT OF AS THE NUMBERS OF THE
02300	DIATONIC INTERVALS FROM C. (HOWEVER THIS DOES NOT FOLLOW  WHEN  GOING
02400	DOWN FROM MIDDLE C.)
02500	
02600	
02700	THE CODE NUMBERS:			ROUGH INDEX:  THE 'PAGE' NUMS.
02800	
02900	1 - NOTES				CODE NUMS.	2,3,4
03000	2 - RESTS				LETTERS, WORDS	  5
03100	3 - CLEFS				VARIOUS COMMANDS  6
03200	4 - LINES				XGP INFO.	  6
03300	5 - SLURS				EDIT MODES	  7
03400	6 - BEAMS				MOVE, COPY, ETC.  7
03500	7 - TRILL				DP, JUSTIFY, ETC. 7
03600	8 - STAFF				"SCORE" INPUT  	  8
03700	9 - MISC.				AUTO. SPACEING	  9
03800	10 - NUMBERS				'PAK' PROGRAM	  9
03900	11 - LIBRARY				SUBROUTINE LIST  10
04000	12 - CIRCLES				RPG LIST	 11
04100	14 - 'SCORE'
04200	16 - LETTERS
04300	17 - KEY SIG.
04400	18 - METER
04500	19 - ADJ. STEMS
04600	24 - 'ZOOM'
04700	33 - PARAM. VALUE
04800	44 - SEE FONTS
04900	101 - SPACING SCALE
05000	144 - READ SOS FILES
05100	333 - SEE DATA LIST
05200	444 - SET SPACING STAFF NUM.
     

00100	******* KEY TO THE PARAMETER NUMBERS *******
00200	
00300	P1=CODE NUMBER, P2=STAFF NUMBER,
00400	   P3=HORIZANTAL POSITION, P4=VERTICAL POSITION BY NOTE NUMBER,
00500	       P5=OFTEN 2ND VERTICAL POS., P6=OFTEN 2ND HORIZANTAL POS.
00600	
00700		THE FOLLOWING CODE NUMBERS ARE USED MAINLY FOR EDITING.
00900	--------  SECTION I  ---------
01000	
01100	1 NOTES: 1, STAFF, POS, NOTE NUM(VERT. POS.),  
01200		(P5) STEM DIR & ACCI,
01300		(P6) FILLED IN? (≥0), DECIS REFER TO ACCENTS, ETC.
01400		(P7)NUM OF TAILS(1=8TH,4=64TH, ETC.)
01500			(IF 2 DIGITS, LFT IS NUM OF DOTS.)
01600		(P8)STEM EXT. BY NT NUM,
01700		(P9)=-1 TO SUPPRESS LEDGER LINES.
01800	        	 (P9 ALSO STORES RHYTHMIC VALUE FOR SPACING.)
01900		(P10)=1 PUTS SLASH ON GRACE-NOTE TAIL (1000 IN P8=SAME)
02000	        (P11)=CHANGE SOURCE POS. OF STEM. (USE WITH P4=400+)
02100	
02200	    P4 100S GIVE MINIS, 200S GIVE DIAMOND SHAPE (HARMONICS)
02300		300S GIVE 'X' NOTES (FOR PERCUSSION, ETC.), 400S=NO NOTE HEAD.
02400	
02500	    FOR P5: <10= NO STEM, 10-13=STEM UP, 20-23= STEM DOWN
02600		1,11 OR 21=FLAT; 2,12,22=#; 3,13,23=NATURAL; 4=DBL b; 5=DBL #
02700	
02800	    FOR P6: POS NUM OR 0 = BLACK NOTE, ANY NEG NUM = WHITE NOTE.
02900	    FOR P6: 10,-10 'HOMES' TO RIGHT OF UPWARD STEM.
03000		     20,-20 'HOMES' TO LEFT OF DOWNWARD STEM.
03100	 	30,-30(FOR 0,-1) PUTS DOTS IN PROPER PLACE IN COMPLEX CHORDS.
03200	
03300	      IF P7 HAS 2 DIGITS THE NOTE IS DOTTED; 2ND DIG. IS NUM OF TAILS.
03400			IF 2ND DIGIT IS 1 AND P6 IS NEG. A WHOLE NOTE PRINTS.
03500		DECIMALS AFTER P5 OR P7 SPACE OUT ACCIDENTAL OR DOT.
03600			.01 IN P7 PUTS SLASH THROUGH TAIL (SAME AS P10).
03700		DECIMALS AFTER P6 ARE ACCENT NUMS (.4-.7,.9 ETC. SEE CODE #9)
03800				UP TO 2 ACCENTS CAN BE PUT IN THIS WAY.
03900	
04000	
04100	2 RESTS: 2,STF,POS,HGT,REST(-2=WHOLE, 0=1/4, 1=1/8,ETC), P6) 1=DOTTED
04200	
04300			P8=NUMBER OF MEASURES REST(TO 999).  THE REST WILL ALWAYS
04400			   TURN INTO A WHOLE REST.  A HORIZANTAL LINE WILL DISPLAY
04500			   TO FACILITATE CENTERING BETWEEN TO BAR LINES.
04550			P8=-1 GIVES WHOLE REST WITHOUT NUMBER ABOVE.
04575	
04587			P9=NON-ZERO WILL CENTER WHOLE REST BETWEEN WHATEVER ITEMS
04593			   COME JUST BEFORE AND JUST AFTER THE REST. (JUST BEFORE
04596			   AND JUST AFTER REFER TO ITEM NUMBERS, NOT POSITION!!)
04700	
04800	3 CLEFS AND OTHER THINGS:  
04900		  3, STAFF, POS, P4=HGT CHANGE(TO MAKE SOP. ETC.),P5=CLEF NUM
05000		(CLEF NUMS ARE: TREB=0, BASS=1, ALTO=2, TENOR=3,
05100	     4=PF.STF BRKT. 10=b, 11=#, 12=NAT., 13=bb, 14=x,15=half,16=whole.
05200		 ADD 100 FOR MINICLEFS.)  (P6-P9 AS IN CODE 11.)
05300	
05400	  OTHER THINGS: P5=40 = PPP   41 = PP   42 = P   43 = MP 
05500			   50 = MF    51 = F    52 = FF   53 = FFF 
05600			   70 = CRESC.  71 = SUBITO  72 = POCO
05625			   80 = ACCEL.  81 = MENO    82 = DIM.
05700			   30 = ED      31=MORDANT   37=RIT.
05800		 ---- MORE WILL BE ADDED! ---(FILES CLEF0,1,2,4,5,7,8 ARE FULL)
06200	
     

06300	4 LINES: 4, STF, POS, P4, P5, P6, P7, P8, P9, P10
06400		(P4) NUM OF STAVES UP FOR BAR LINE - IF ALL HIGHER 
06500			PARAMETERS = 0, OR HGT1 (i.e.VERT. POS1 IF LINE).
06600		   FOR HEAVY BAR LINES ADD 100*THICKNESS TO NUMBER IN P4
06650		   ADD 1000 MORE FOR DOUBLE BAR.
06700		(BAR LINES DON'T AFFECT TOP AND BOT MAXI'S.-FOR AUTO. SPACE)
06800		(P5) HGT2,   IF P5=50, A +N IN P7=CRESC., -=DECRESC., ETC.
07100		(P6) POS2, 	(IGNORED IF BOX IS PRINTED.)
07200		(P7) 1=VERT. DASHES. IF P5=50 +N IN P7=CRESC., -=DECRESC.
07300		     2=HORIZ. DASHES.  -1 GIVES VERTICAL WAVEY LINE. 3=LGE. BRKT.
07500		     P9=WIG.UNIT HGT.,  P8 CHANGES WIGGLE WIDTH, THIS AND NEXT
07600		     -2 GIVES HORIZ.WAVEY LINE(P5 GIVES HGT OF WAVE BY NT NUM)
07700				....P6=RIGHT END POINT OF WIGGLE.
07800			P10=ADDED WIDTH FOR WIGGLES AND DASHES.(1=1 MORE, ETC.)
07900		(P8) NON-ZERO GIVES HORIZ. BOX SIZE(BY NT NUMS) IF P5=50
08000			IF VERT. DASHES, P8 SETS SIZE.(ALSO AFFECTS WIGGLES.)
08100		(P9) GIVES VERT. BOX SIZE, IF P5=50.(AFFECTS VERT. WIGGLES ALSO.)
08300		(P10)=THICKNESS IF STRAIGHT VERTICAL LINE OR BOX(NOT BAR LINE.)
08310	
08320	----------------------|-------|-------|-------|-------|-------|-------
08325			  P4  |  P5   |  P6   |  P7   |  P8   |  P9   |  P10
08330	----------------------|-------|-------|-------|-------|-------|-------
08340	LINES	 	HGT.1 | HGT.2 | POS.2 |   0   |   0   |   0   |
08350	----------------------|-------|-------|-------|-------|-------|-------
08352	HEAVY VERT.LINE  BOT. |  TOP  |  =P3  |   0   |   0   |   0   | THICKN.
08356	----------------------|-------|-------|-------|-------|-------|-------
08360	BAR LINE    N=NUM. OF |   0   |   0   |       |       |       |
08370	            STAVES UP |       |       |       |       |       |
08375	   (+1000 FOR DBL BAR)|	      |       |       |       |       |
08380	----------------------|-------|-------|-------|-------|-------|-------
08390	HEAVY BAR     N+100*  |   0   |   0   |       |       |       |
08400	            THICKNESS |       |       |       |       |       |
08405	   (+1000 FOR DBL BAR)|	      |       |       |       |       |
08412	----------------------|-------|-------|-------|-------|-------|-------
08414	HEAVY BRACKET    BOT. |  TOP  |   0   |   3   |   0   |   0   | THICKN.
08416	                 HGT. |  HGT. |       |       |       |       |       
08418	----------------------|-------|-------|-------|-------|-------|-------
08420	CRESC.	 	 HGT. |  50   | POS.2 | 0  OR |   0   |       |
08425			      |       |       |SPREAD |       |       |
08426			      |       |       |  =N   |       |       |
08430	----------------------|-------|-------|-------|-------|-------|-------
08440	DECRESC. 	 HGT. |  50   | POS.2 | -1 OR |   0   |       |
08450			      |       |       |SPREAD |       |       |
08460			      |       |       |  =-N  |       |       |
08465	----------------------|-------|-------|-------|-------|-------|-------
08470	DASHES - HORIZ.  HGT. |   0   | POS.2 |   2   | DASH  |       | THICKN.
08472	  (NO SLOPE)          |       |       |       | SIZE  |       |
08475	----------------------|-------|-------|-------|-------|-------|-------
08480	DASHES - VERT.   BOT. |  TOP  |   0   |   1   | DASH  |       | THICKN.
08490	  (NO SLOPE)     HGT. |  HGT. |       |       | SIZE  |       |
08495	----------------------|-------|-------|-------|-------|-------|-------
08500	WIGGLE - HORIZ.  HGT. |       | POS.2 |  -2   | WIGL. | WIGL. | THICKN.
08510	  (NO SLOPE)          |       |       |       | WIDTH |  HGT. |
08520	----------------------|-------|-------|-------|-------|-------|-------
08530	WIGGLE - VERT.   BOT. |  TOP  |   0   |  -1   | WIGL. | WIGL. | THICKN.
08540	  (NO SLOPE)     HGT. |  HGT. |       |       | WIDTH |  HGT. |
08550	----------------------|-------|-------|-------|-------|-------|-------
08560	BOXES		 HGT. |  50   |   0   |   0   | WIDTH |  HGT. | THICKN.
08570			      |       |       |       |       |0=SQUAR|
08580	----------------------|-------|-------|-------|-------|-------|-------
08590	
08600	
08700	
08800	
09610	5 SLURS: 5, STAFF, POS1, NT1, NT2, POS2, P7=DIP(NT UNITS + OR -), P8, P9
09710		FOR P8 0=SLUR, 1=BRACKET, 2=LFT 1/2 BRKT, 3=RT 1/2 BRKT,
09760	
09810		FOR AUTOMATIC ALIGNMENT OF SLUR WITH NOTES, SET P13=1, THEN
09910		IF P8=-1, END POINTS WILL HOME TO NOTE CENTERS.
10010		IF P8=-2, END POINTS WILL HOME BETWEEN NOTES.
10060	
10110		USE P8=-3 TO HOME BETWEEN NOTES WHERE 1ST IS DOTTED.
10160	
10210		P9=CURVE FACTOR.  DEFAULT VALUE (0)=3  GIVES SLIGHTLY "FLATTENED"
10310		  SLURS. TO MAKE THEM MORE ROUND, DECREASE P9 TOWARD 2. 
10410		  TO RESTRICT THE CURVE TO THE END PORTIONS, INCREASE P9.
10510	
10610	     IF P8=1 AND P9 IS NOT 0, A BRACKET WITH A NUMBER(P9) WILL BE DRAWN.
     

00100	
00200	
00300	6 BEAMS: 6, STF, POS1, NT1, NT2, POS2, 
00400			FOR "MINI" BEAMS ADD 100 TO P4 (-100 FOR NEG. NUMS.)
00450	
00500		 (P7)  STEM DIR(10=↑ 20=↓), 
00600	 	  --  2ND DIG. IN P7=TOTAL NUM OF BEAMS.
00610		     IF P7 IS NEGATIVE THEN TREMOLO SLASHES ARE MADE.
00655			  IF TREMOLO, P8 SETS WIDTH. (0=2.2), P9=POS.
00677	
00700		 (P8)  10=LFT,  20=RT. (OR TREM. WIDTH)
00800		       -10,-20=UNATTACHED PARTIAL BEAMS
00900			 A 2ND DIGIT=DISPLACEMENT NUMBER.
01000			-- IF P10 HAS 30+, P8 WILL HAVE POS3 AND
01100			-- P9 WILL HAVE POS4.
01150	
01200		 (P9)  POS3. (OR POS4 IF P10>30.)
01300			   OR POSITION OF TREMOLO
01400		IF P8=0 AND P10=0 AND P9=N, N WILL BE A NUMBER OVER THE BEAM.
01450	
01500		 (P10) = NUM OF BEAMS DISPLACED (NO MORE THAN 9.)
01600		  ADD 10 FOR INNER SHORT PARTIAL →
01700		  ADD 20 FOR INNER SHORT PARTIAL ←
01800		  ADD 30 FOR INNER PARTIAL BETWEEN TWO STEMS.
01900	
02100		      P11 CAN RESET HOMING RANGE (OR -1 = NONE.)
02200	
02210	--------------------------------------------------------|-------|-------
02400							   P8	|  P9	| P10
02500	--------------------------------------------------------|-------|-------
02600	UNATTACHED PARTIAL BEAM POINTING →		  -10	|   0	|  0
02700					 ←		  -20	|   0	|  0	
02800	  DISPLACEMENT IS IN 2ND DIGIT OF P8		   	|    	|    
02900	--------------------------------------------------------|-------|-------
03000	ATTACHED PARTIAL BEAM POINTING →	           10   | POS.3 |  0   
03100				       ←	           20   | POS.3 |  0   
03200	  DISPLACEMENT IS IN 2ND DIGIT OF P8		   	|    	|    
03300	--------------------------------------------------------|-------|-------
03400	INNER PARTIAL BEAM POINTING →			    0   | POS.3 | 10
03500				    ←			    0   | POS.3 | 20
03600	  DISPLACEMENT IS IN 2ND DIGIT OF P10			|	|
03700	--------------------------------------------------------|-------|-------
03800	INNER BEAM             				  POS.3 | POS.4 | 30
03900	  DISPLACEMENT IS IN 2ND DIGIT OF P10			|	|
04000	--------------------------------------------------------|-------|-------
04100	TREMOLO	 		   *****P7=-10 OR -20     WIDTH |TRM,POS| DISP. 
04200	   -PARALLEL TO OTHER BEAMS -TILT IN P3-6    		|	|
04300	    NUMBER OF BEAMS IS SECOND DIGIT OF P7		|	|
04400								|	|
04500	       			   *****P7=-10 OR -20     WIDTH |   0   | DISP. 
04600	 -WITHOUT OTHER BEAMS - STANDARD TILT			|	|
04700	    NUMBER OF BEAMS IS SECOND DIGIT OF P7		|	|
04800	--------------------------------------------------------|-------|-------
04900	NUMBER OVER OR UNDER BEAM			    0	| NUM.	|  0
05000	--------------------------------------------------------|-------|-------
05100	
05200	
05300	
05400	7 TRILLS: 7, STF, POS1, NOTE NUM, SIZE(0=1), POS2, P7(=1=NO WIGGLE)
05500			IF P7=1, NO WAVEY LINE APPEARS.
05600	
05700	
05800	
05900	8 FOR STAFF LINES: 8,  HGT(STAFF NUM. 3 TO -3), (P3)POS1, 
05950		P4) VERT. SHIFT,  5) SIZE FACTOR (0=1),  P6) POS2.(0=200)
06100		P7) IF SET TO NON-ZERO THE STAFF WILL BE INVISIBLE.
06200		   (USE THIS AS A MEANS TO SET SIZE AND POSITION OF
06300		    NOT APPEARING ON A STAFF.)
06400		P8) USED TO SET MOVE-UP DISTANCE(INCHES) TO NEXT FILE'S
06500		    STAFF 0. (USE P8 ONLY! WITH STAFF 0.)
06600		    HORIZANTAL LINE WILL DISPLAY AT POSITION OF NEXT STAFF 0.
06700	        P9=1 WILL ASK FOR ID NAME FOR THIS STAFF(TO BE USED IN 'PARTS')
07000	
07100	
07200	9 ACCIDS, ACCENTS, ETC.: 9, STF, POS, NOTE NUM, P5, P6=SIZE (0=1)
07300		FOR P5: b=1, #=2, NAT=3, WEDGE ACCENT ∧=4(-4=INV), ACCENT >=5,
07400		FERMATA=6 or 26(-6=INV), STAC. OR DOT=7, REPEAT BAR SIGN=8,
07500			TENUTO OR DASH=9, DNBOW=11, UPBOW=12, HARM,=13, +=14,
07600			THESIS=15, ARSIS=16, MORDANT=17, INV.MORD.=18, TRILL=20
07650	
07700	   ***** 2 ITEMS MAY BE ENTERED AT ONCE WITH P5. e.g. 47 WILL CREATE
07800		A WEDGE(4) WITH A DOT(7) BELOW IT; 79 MAKES A DOT(7) WITH A
07900		DASH(9) BELOW IT. IF ANY OF THE 2-DIGIT CODES ARE USED, THEY
08000		MUST! COME FIRST.   e.g. 135  MAKES  A  HARMONIC(13) WITH AN
08100		ACCENT(5) BELOW.  ETC.	(513 WILL NOT WORK!)
08200	
08300	
08400	10 NUMBERS: 10, STF, POS, NT NUM, NUM(TO 2 DIGITS ONLY), SIZE FACT., P7
08500		P7=2 GIVES THIN LINE NUMS., =0 = BDR40 TYPE FONT WHEN IT PLOTS.
08600					    =1 = BDI40 (ITALICS)
08700		P8=1 CIRCLES NUMBER, =2 BOXES NUMBER.  P10>1 THICKENS BOX ETC.
08800	
08900		 SET P13 TO 1 FOR AUTOMATIC HOMING.
09000		 (SEE HOMING INFO IN EDIT SECTION.)
09100	
09200	
09300	11 LIBRARY ITEMS: 11, STAFF, POS,  VERT. NOTE NUM, P5)ITEM NUM, 
09400		   P6)HORZ. SZ., P7)VERT. SZ.,   P8,  P9,  P10
09500			P8=-1 FOR FILL ON CRT, =-2 FOR NO FILL ANYWHERE.
09600	
09700		P5 MAY HAVE NUMBERS 0 THROUGH 99.  NUMBERS 0-9 REFER TO
09800		THE "BASIC" DRAW FILE.  (SEE 'DRAW.MAN' FOR PREPERATION
09900		OF 'DRAW' FILES.)  THE "BASIC" FILE SHOULD HAVE A NAME
10000		WITH 4 LETTERS AND THE NUMBER 0 ON THE END.  IF THE "BASIC"
10100		NAME IS 'CHAR0' THEN NUMBERS 10 THROUGH 19 WOULD REFER
10200		TO 'CHAR1'; 20-29 TO 'CHAR2', 30-39 TO 'CHAR3', ETC.
10300	
10400		P9 = CLOCKWISE ROTATION BY DEGREES.
10500		
10600		IF P10 IS SET TO 1 A "BASIC" FILE NAME WILL BE REQUESTED.
10700		THE NAME WILL BE STORED IN P10. ANY TIME P10 IS SET TO 1
10800		THE NAME WILL BE RE-REQUESTED.  ANY TIME P10 IS IGNORED THE
10900		LAST NAME GIVEN WILL BE PUT INTO P10.
11000		THUS SEVERAL ITEMS CAN USE DIFFERENT "BASIC" NAMES.
11100	
11200	
11300	12 CIRCLES AND ARCS: 12, STF, POS,  VERT. NT NUM, 	
11400			P5=RADIUS(BY HORIZ. SCALE NUMS)
11500			P6=DEGR.1, P7=DEGR.2; ZEROS GIVE COMPLETE CIRCLE.
11600			P8=THICKNESS(0=1 LINE, 1=2 LINES, ETC.)
11700	
11800	
11900	14  "SCORE" INPUT: 14, STAFF    -- SEE LATER SECTION.
12000	
12100	
12200	16 LETTERS, WORDS, ETC.:
12300	   16, STAFF, POS, VERT. NOTE NUM, P5)=SIZE FACTOR, P6
12400		----- THEN TYPE TEXT ----- 
12500	     ---- SEE SECTION II FOR DETAILS -----
12600	
12700	
12710	17 KEY SIG.: 17,STF,POS,VERT, P5)NUM OF #S OR FLATS(+=#, -=b),CLEF NUM.
12740					(P6=0=TREB, =1=BASS, =2=ALTO, =3=TENOR)
12770				FOR MINI CLEFS ADD 100 TO P6.
12780	
12790	
12800	18 METER:  18, STF, POS, VERT, P5)TOP NUM, P6)BOTT NUM, P7)SIZE FACTOR
12850			IF P5=99 THE LETTER C WILL PRINT
12900	
13500	
13600	19 ADJUST STEMS TO MEET BEAMS: 19, STAFF NUM (99=ALL STAVES)
13700				  (ALSO REMOVES TAILS WHERE NEEDED)
13800	
13900	19 N1 N2 ------ IF 2 NUMBERS FOLLOW 19 THE 1ST  SHOULD  BE  THE  ITEM
14000	NUMBER  OF  A  BEAM AND THE 2ND THE ITEM NUMBER OF A NOTE.  THIS WILL
14100	CAUSE THE BEAM TO HOME TO ANY NOTE ON A DIFFERENT STAFF.
14200		BEFORE  USING THIS, CERTAIN REQUIREMENTS MUST BE MET.  P2 AND
14300	P6 SHOULD BOTH BE SET TO THE HORIZANTAL POSITION OF THE ORIGIN OF THE
14400	BEAM  (I.E.  USUALLY  P2).   P4  AND  P5  SHOULD  BE SET THE VERTICAL
14500	POSITION OF THE ORIGIN (USUALLY P4).  P7  SHOULD  INDICATE  THE  STEM
14600	DIRECTION  OF  THE NOTE AT THE ORIGIN POINT.  P11 IS BEST SET TO 1 TO
14700	INHIBIT  OTHER  HOMING  FEATURES.  IF  THE  BEAM  IS  COMPOSITE, THIS
14800	PROCEDURE MUST BE FOLLOWED FOR EACH BEAM ITEM INVOLVED.
14900		THE NOTE ON THE OTHER STAFF MAY HAVE A STEM OF ANY LENGTH AND
15000	IT MAY BE IN FRONT OF OR BEHIND THE ORIGIN POINT OF THE BEAM.  IT  IS
15100	PROBABLY  BEST TO USE THIS FEATURE ONLY AFTER! THE OTHER '19' FEATURE
15200	HAS BEEN USED.  CHECK STEM LENGTHS AND MEETING POINTS CAREFULLY AFTER
15300	USE.
15400	
15500	
15600	24 MAGNIFY AREA:  24,SIZE FACTOR, NEW CENTER X,Y  (USE -512 TO 512 RANGE)
15610	
15800	  IF THE STAVES -1 THOUGH 2 ARE USED ONLY 2 NUMBERS NEED BE TYPED.
15900	24,N  WHERE N IS A NUMBER OF THE FOLLOWING FORM WILL INCREASE THE
16000	SIZE BY THE LEFT DIGIT OF N.    24 200  WILL MAGNIFY BY 2 AND PUT
16100	THE FAR LEFT SIDE TO THE CENTER OF THE SCREEN.  200.5 WILL KEEP THE	
16200	CENTER AS IS.  201 WILL PUT THE FAR RIGHT SIDE TO THE CENTER.
16300	300 WILL MAGNIFY BY 3, ETC.
16350	
16400	
16500	33 PARAMETER CONTENTS:  33  N.  TO SEE EXACT CURRENT CONTENTS
16600			OF PARAMETER NUM. N WHILE IN EDIT MODE.
16700	
16750	
16800	44 1  --- IF N=1 FROM THIS POINT ON ALL NUMBERS AND LETTERS USING THE
16900	          TYPE FONTS BDR AND BDI WILL APPEAR WITH THEIR REAL OUTLINES.  
17000	          THIS SHOULD BE USED ONLY FOR CHECKING ON CLOSE SPACING AS
17100	          THE PROGRAM IS SLOWED CONSIDERABLY DUE TO THE GREAT NUMBER
17200	          OF VECTORS TO BE DRAWN.  
17300	    44 -1 WILL CAUSE ALL LETTERS TO BE IN 'PRIM' FONT (UPPER AND LOWER
17400		  CASE) ON CRT.
17500	     44,0 WILL RETURN TO THE ORIGINAL DISPLAY MODE.  SEE 7 AND 16 IN
17600	            REGARD TO FONTS.
17700	
17750	
17800	101  SPACING SCALE: 101, STAFF NUM  (101,99 ERASES IT)
17900			(THE SCALE NEED NOT BE ERASED BEFORE SHIFTING IT
18000			 TO A NEW STAFF.)
18010	
18100	
18200	333 N1,N2,N3  PRINTS RN ARRAY FROM ITEM N1 TO ITEM N2. N3=1 FOR LPT.
18300		(USING LPT IS FATAL FOR CURRENT DPY AND MUST BE FOLLOWED BY
18400		<CALL>, F<CR> IN ORDER TO RELEASE THE LPT.)
18500		333 <CR> WILL TYPE DATA FOR ALL ITEMS.
18505	
18507	
18510	444 N:  ESTABLISHES STAFF N AS THE BASIS FOR AUTOMATIC SPACING OF ITEMS
18520		ENTERED BY MEANS OF CODES 14 OR 144.  SEE PG.9.
     

00100	---------  SECTION II  --------------
00200	
00300	16 LETTERS, WORDS, ETC.:
00400	   16, STAFF, POS, P4=VERT. NOTE NUM, P5=SIZE FACTOR, P6
00500		----- THEN TYPE TEXT ----- 
00600	
00700	0-9, A-Z, a-z, and = . - , * ( ) " ; : + ? ! CAN BE USED.
00800	
00900	UP TO 12 CHARACTERS WILL BE PACKED IN AN ITEM.
01000	STRINGS OF MORE THAN 12 CHARACTERS WILL BECOME SEVERAL ITEMS FOR
01100	EDITING PURPOSES.  
01200	TO PLACE ITEMS IN RELATION TO ALREADY PRESENT NOTES, SET P6≠0.  
01300	SEPARATE EACH ITEM BY SLASHES.
01400	THE SLASHES WILL NOT BE DRAWN.(BUT A LINE ENDED WITH * WILL PRINT *.)
01500	
01600	WHEN  P6≠0,  NUMBERS WILL APPEAR OVER THE NOTES OF THAT STAFF AND YOU
01700	WILL BE ASKED TO TYPE POSITION NUMBERS FOR EACH ITEM.    IF  P4  (THE
01800	VERTICAL  POSITION)  IS  SET  TO 0 YOU SHOULD TYPE 2 NUMBERS FOR EACH
01900	ITEM.  SEPARATE THE PAIRS OF NUMBERS BY SLASHES.  THE FIRST NUMBER OF
02000	A  PAIR  WILL  BE HORIZANTAL POS., THE SECOND WILL BE VERT. POS.  THE
02100	HORIZANTAL NUMBERS WILL BE IN TERMS OF THE NUMBERS  OVER  THE  NOTES.
02200	THUS  1.5,-3/  WOULD  PUT  ITEM 1 EXACTLY HALF WAY BETWEEN NOTE 1 AND
02300	NOTE 2 AND AT  THE  VERTICAL  POSITION  OF  NOTE  LEVEL  -3.     WITH
02400	1.5,-3/.7,13/  THE FIRST ITEM WOULD BE AS BEFORE AND THE SECOND WOULD
02500	BE AT .7 OF THE DISTANCE FROM THE BEGINNING OF THE LINE AND THE FIRST
02600	NOTE AND AT THE VERTICAL POSITION 13.
02700	
02800	IF  P4 IS ANY NON-ZERO NUMBER (AND P6≠0) ALL ITEMS WILL BE PUT AT THE
02900	LEVEL INDICATED IN P4.  IN  THIS  CASE  TYPE  ONLY  ONE  NUMBER  (FOR
03000	HORIZANTAL  POSITION) PER ITEM.  THIS IS PROBABLY THE BEST WAY TO PUT
03100	IN THE TEXT OF VOCAL LINES.
03200	
03300	CURRENTLY (5/74) THREE TYPE FONTS ARE AVAILABLE.  THE DEFAULT FONT IS
03400	CALLED  'PRIMITIVE'.   ALSO  THERE  IS  'BDR40' AND 'BDI40'(ITALICS).
03500	ALL THESE INCLUDE UPPER AND LOWER CASE.  ****** NOTE THAT IF THE TYPE
03600	FONTS  ARE  TO  BE  MIXED THE FIRST ENTRY MUST INCLUDE A FONT CONTROL
03700	CHARACTER EVEN IF IT IS THE DEFAULT FONT.
03800	
03900		FONT CONTROL CHARACTERS:
04000			# = PRIMITIVE  (52)
04300			& = BDR40 (NON-ITALICS) (50)
04400			@ = BDI40 (ITALICS)  (51)
04500			< = OUTLINE ONLY  (53)
04600			> = FILLED   (54) (WILL NEVER FILL ON CRT HOWEVER.)
04610			$ = UPPER CASE (48)
04632		(use these last 2 controls only when not working with display.)
04655			% = LOWER CASE (49)
04700	
04800		WHEN INITIALLY USING THE FONTS THE UPPER-LOWER
04900		CASE CHARACTER MUST APPEAR AS WELL AS THE FONT CHARACTER.
05000		LATER FONT OR CASE CHANGES MAY APPEAR SINGLY.
05100	
05200	EXAMPLES:  TO GET THE FOLLOWING IN NON-ITALICS -
05300	
05400			Clarinet
05500	
05600	TYPE - &Clarinet/           (OR: $&C%LARINET/ WHEN USING ORDINARY TTY.)
05700	
05800		FOR THE NEXT WITH THE 2ND WORD ITALICS, THE 3RD PRIMITIVE-
05900	
06000	TYPE - &Oboe/@cresc./#v.s./
06100	
06200		&<Oboe/  WOULD PRINT "Oboe" in non-filled letters.
06300	
06400	MOST OF THESE COMMANDS ARE SEMI-STICKY.  TO BE SAFE THEY SHOULD BE
06500	RESET EACH TIME USED.
06600	
06700	WHEN LETTERS ARE EDITED THEY APPEAR UNDER CODE #16.  
06800	AT  EDIT  TIME  P13=1  WILL  CAUSE  HOMING  TO  A NEARBY NOTE.  NOW A
06900	NEGATIVE SIZE FACTOR (IN P5) WILL INVERT THE TEXT.  IF THE STAFF SIZE
07000	IS  LATER  CHANGED  THE  SPACING CONTINUITY OF STRINGS LONGER THAN 12
07100	LETTERS  WILL  BE  DISTURBED.   TO  CORRECT  THIS  SET  P10=1 FOR THE
07200	MISPLACED  UNIT  OF  TEXT.   IT  WILL  THEN  AUTOMATICALLY RESUME THE
07300	CORRECT POSITION AND RESET P10 TO 0.
     

00100	--------  SECTION III  -----------
00200	
00300	***********  LETTER COMMANDS  ***************
00400	
00500	'G' = GET OLD DATA TO WORK ON.
00600	
00700		IF YOU GET THE MESSAGE "UNPACK IT" USE THE MSSAUX PROGRAM.
00800	
00900	'GM' = GET MORE TO ADD TO CURRENT DISPLAY
01000	
01100	'RS' = RESTART.  CLEARS BUFFERS AND SCREEN - NO RECOVERY POSSIBLE!
01200	
01300	
01400	SAVE ALL: TYPE 'SAVE' OR 'SA'  ('SD' SAVES DISPLAY ONLY FOR DPY.F4)
01500	
01600		IF 'SAME' IS GIVEN AS A FILE NAME THE NAME WILL BE 
01700		SAME AS PREVIOUSLY.
01800	
01900	  'SB' = SAVE BIG.  SAVES ALL IMPORTANT BUFFERS. FOR QUICKER READIN.
02000	  'SM' = 'SB' WITH THE SAME NAME AS PREVIOUSLY.
02200	
02300	   TYPE '99' TO BACK UP FROM FILE NAME REQUEST.
02400	
02500	
02600	
02700	<<<<<<<<<< HOW TO RUN A PROOF ON THE 'XGP' >>>>>>>>>>>>>>>>
02800	
02900		THE PROGRAM 'MP.DMP[MSS,LCS]' WILL CREATE A FILE FOR THE
03000	XGP PROGRAM 'X5.DMP[MSS,LCS]' OR FOR THE CALCOMP.  GENERALLY USE SIZE
03100	FACTOR = 1 FOR XGP PRINTING.
03200	
03300	THE FIRST  PROMPT IN MP IS 'RESET BOTTOM?'  THE ANSWER SHOULD USUALLY
03400	BE 'Y' WHEN MP'S OUTPUT IS TO GO TO X5.  'P' WILL CAUSE ALL LETTERS 
03500	NUMBERS TO PRINT WITH THE 'PRIMITIVE' FONT.  'A' WILL RESET TO THE
03600	ORDINARY MODE IF A 'P' HAD BEEN GIVEN EARLIER.
03700		IF  THE  AUTOMATIC  'MOVE-UP'  FEATURE  INVOLVING  P8  OF THE
03800	PARAMETERS FOR STAFF 0 IS USED (SEE PG.4) AND MORE THAN ONE  SEPARATE
03900	FILE  IS TO BE CREATED FOR PRINTING ON THE CALCOMP, THE ANSWER TO THE
04000	FIRST PROMPT SHOULD BE 'N' FOR ALL RUNS AFTER THE LOWEST  PORTION  OF
04100	THE PAGE IS DONE.
04200	
04300		IF THE PAGE IS IN MORE THAN ONE SECTION ALWAYS START WITH THE
04400	BOTTOM  SECTION FIRST.  YOU WILL BE ASKED FOR FILE NAMES.  WHEN THERE
04500	ARE NO MORE TO BE GIVEN TYPE <CR>.  
04600	THE QUESTION, "MOVE UP AT END?" SHOULD BE ANSWERED BY Y, N OR WITH
04700	A NUMBER.  A NUMBER WILL INDICATE THE NUMBER OF INCHES TO MOVE FROM
04800	THE LEVEL OF STAFF 0 AT POSITION 0 TO STAFF 0, POSITION 0 IN THE 
04900	SUCCEEDING FILE.
05000	'Y' WILL PLACE THE SUCCEEDING FILE'S LOWEST POINT ABOUT 1/2" ABOVE
05100	THE HIGHEST POINT OF THE FIRST FILE.  'N' IS USED TO WRITE FILES
05200	EXACTLY ON TOP OF ONE ANOTHER.
05300	
05400		IF THE FILE NAMES FORM A SERIES OF 5 LETTER NAMES ENDING WITH
05500	CONSECUTIVE  LETTERS  OF  THE  ALPHABET,  YOU  MAY TYPE THE LAST NAME
05600	FOLLOWED BY THE TOTAL NUMBER OF FILES THAT ARE TO BE PRINTED ON  THAT
05700	SINGLE PAGE.  THE FILES WILL BE FOUND IN THE PROPER SEQUENCE.
05800	FOR EXAMPLE, 'TRC4D 4' WILL PRINT FILES TRC4D THROUGH TRC4A.
05900		IF A SECOND NUMBER IS TYPED, THE FILES WILL BE EVENLY SPACED
06000	BY THAT NUMBER OF INCHES BETWEEN THE BOTTOM OF EACH STAFF 0 -- AS
06100	DESCRIBED ABOVE.
06200	
06300	A SIZE FACTOR OF 1 CREATES THE CORRECT WIDTH FOR 8 1/2" PAPER.
06400	  TYPE A SECOND NUMBER(1) AFTER 'SIZE FACTOR' TO HEAVIER STAFF LINES AND
06500	  LEDGER LINES.  (SOMETIMES NECESSARY WITH XGP.)
06600	
06700	WHEN THE PROGRAM HAS EXITED A FILE CALLED PLT.DMD HAS BEEN WRITTEN ON
06800	THE  DSK.   THE DATA MAY NOW BE PRODUCED ON THE PLOTTER (BY USING THE
06900	PLOT PROGRAM, P.DMP[MSS,LCS])  OR  ON  THE  XGP  (BY  USING  THE  XGP
07000	PROGRAM,   X5.DMP[MSS,LCS].)   (PLOT   HAS  NO  PROMPTS  AND  XGP  IS
07100	SELF-EXPLANATORY.)
07200	
07300	
07400	---- FOLLOWING ARE OLD PLOT COMMANDS ----
07500	'P' N1, N2, N3, N4, N5, N6 = PLOT DISPLAY
07600		 N1=WIDTH FAC., 
07700		 N2=HEIGHT FAC.
07800	         N3=1, PLOTS ONLY THIN LINES. N3=2, PLOTS ALL BUT THIN LINES.
07900		 N4=1  NO MOVE AT START 
08000		 N5=1  NO MOVE AT END.
08100		 N6= MOVE UP 'N' STAVES AT END.
     

00100	--------  SECTION IV  -----------
00200	
00300	******  VARIOUS WAYS TO GET INTO EDIT MODE  ********
00400	
00500	
00600	   TO MOVE LAST ITEM ENTERED LFT-RT OR UP-DOWN:
00700		'L', 'R', 'U' OR 'D' + NUM OF STEPS TO LFT-RT 
00800			(NOTHING ELSE REQUIRED)
00900	   THIS WORKS ONLY IMMEDIATELY AFTER THE ITEM HAS BEEN ENTERED.
01000	
01100	
01200	'ED(IT)', POS, STAFF, (CODE NUM) ----- TO USE LIGHT PEN: TYPE 'ED' <CR>
01300	
01400	A VERTICAL LINE WILL APPEAR AT  THE  POSITION  GIVEN  AND  ALL  ITEMS
01500	WITHIN  5  SPACES OF THE LINE ON THAT STAFF WILL COME UP FOR EDITING.
01600	TO PASS OVER AN ITEM TYPE <CR>.  SEE BELOW FOR METHOD OF CHANGING THE
01700	VARIOUS PARAMETERS.
01800	
01900	IF THE STAFF NUMBER IS GREATER THAN 4, ITEMS ON  ALL  STAVES  MAY  BE
02000	EDITED.
02100	
02200	IF A CODE NUMBER IS GIVEN, THE ITEM NEAREST THE LINE WITH THAT NUMBER
02300	WILL COME UP.  FOLLOWING, ALL OTHER ITEMS OF THAT NUMBER ON THAT LINE
02400	WILL COME UP.
02500	
02600		  WITH THE LIGHT PEN, MOVE CURSOR TO THE ITEM TO BE
02700		  EDITED.  TYPE <CR> AND ITEMS ON ALL STAVES NEAR THAT POINT
02800		  WILL COME UP FOR EDITING IN ORDER. (USES SAME MODE
02900		  AS ABOVE.)
03000	
03100	S(ET) AND A(LIGN) ---------
03200	
03300	IF YOU TYPE 'S' WHILE IN THE ABOVE  FORM  OF  EDIT  MODE  ('ED')  THE
03400	VERTICAL  LINE  WILL  JUMP  TO THE POSITION OF THE CURRENT ITEM UNDER
03500	CONSIDERATION. TYPE <CR> TO PROCEED TO OTHER ITEMS.   AT  THIS  POINT
03600	TYPING 'A' WILL  AUTOMATICALLY ALIGN THE CURRENT ITEM TO THE POSITION
03700	OF THE ITEM AT 'SET'.  TYPE 'X' TO EXIT FROM ANY EDIT MODE.
03800	
03900	'LP'=LIGHT PEN --- THIS MAY BE USED IN ANY FORM OF EDIT MODE.  MOVE
04000			THE CURSOR TO THE LOCATION DESIRED FOR THE ITEM.
04100			<CR> WILL MOVE THE ITEM.  NOTE THAT HORIZANTAL
04200			MOVEMENT IS FREE BUT VERTICAL MOVEMENT IS BY STAFF
04300			NUMBERS.  ALL DETAILS OF VERTICAL MOVEMENT MUST BE
04400			TYPED IN.
04500	
04600	
04700	  'I' N = EDIT ITEM NUMBER N
04800			THIS MAY BE TYPED AT ANY TIME WHILE IN EDIT MODE.
04900			THE ITEM INDICATED WILL NEXT COME UP.
05000	  'ST' STAFF NUM, CODE NUM--EDITS ONLY ITEMS OF THAT CODE NUM ON
05100	           THAT STAFF.   IF CODE=0, THEN ALL ITEMS WILL COME UP.
05200	
05300	
05400	***********  HOW TO CHANGE PARAMETERS  ****************
05500	
05600	
05700	  IN EDIT MODE: 'L','R','U', OR 'D' FOLLOWED BY N, MOVES N SPACES TO
05800	    LEFT, RIGHT, UP OR DOWN.  2 DIRS. MAY BE GIVEN AT ONCE.
05810	
05820	  AFTER AN 'L' OR 'R' MOVE HAS BEEN MADE, THE LETTER ALONE (NO NUMBER)
05830	  WILL SUFFICE TO MOVE THE SAME VALUE AGAIN.  THE SAME APPLIES TO 
05840	  THE 'U-D' PAIR.
05900	
06000			****-- OR --****
06100	
06200	  PN1,N1  PN2,N2  PN3,N3  ETC. (TYPE PAIRS OF NUMS TO CHNG PARAMS)
06300			THE FIRST OF EACH PAIR MUST BE THE PARAMETER NUMBER
06400			AND THE SECOND WILL BE THE NEW VALUE FOR THAT PARAM.
06500	
06600			IF 2 ZEROS ARE ADDED AFTER A PARAMETER NUMBER (i.e.
06700			600 INSTEAD OF 6) THE SECOND NUMBER OF THE PAIR
06800			WILL BE ADDED TO THE CURRENT VALUE OF THAT PARAMETER
06900			INSTEAD OF MERELY REPLACING.  THIS IS USEFUL FOR 
07000			EXTENDING P6 OF SLURS OR BEAMS, ETC.
07100	
07200			 <CR> ENDS EDIT AND MOVES TO NEXT ITEM FOR EDIT
07300			 'X' ENDS EDIT, EXITS TO INPUT MODE
07400			 'C'SAVES OLD AND NEW FORMS, I.E. "COPIES" ITEM.
07500			 'C' N  SAVES & MOVES TO ITEM N.
07600			 'DEL'  DELETES ITEM AND MOVES ON TO NEXT
07700	
07800	HOMING	**** SET P13=1 TO HOME IN ON ANY NEARBY NOTE ON SAME STAFF.
07900			(P13 RESETS SELF TO 0)
08000	
08100	
08200	GROUP EDIT COMMANDS - - - - - - - 
08300	
08400	'MOVE' OR 'M' <CR>:  TO MOVE GROUPS OF ITEMS
08500	
08600	 YOU WILL BE ASKED TO TYPE: 
08700			STAFF NUM, POS1, POS2, (CODE NUM)
08800	
08900	    TO SHRINK OR EXPAND ALL STAVES GIVE STAFF NUM = 11.
09000	    IF NO CODE NUM(4TH NUM) IS GIVEN ALL ITEMS IN THE AREA WILL BE MOVED.
09100	
09200	     IF 'L' IS GIVEN AS STAFF NUM, THE AREA TO BE MOVED MUST
09300	     BE INDICATED WITH THE LIGHT PEN.
09400	
09500	   *********  88 NOT WORKING NOW  4/75 **************
09600	    TO MOVE A CONTINUOUS GROUP OF ITEMS TYPE:
09700			88,  1ST ITEM NUM,  LAST ITEM NUM
09800	
09900	          ----- 'ASK' FEATURE ****** NOT WORKING NOW 4/75 *****------
10000	        IF 100 IS ADDED TO THE CODE NUM, YOU WILL BE ASKED IF YOU
10100	   WANT TO MOVE EACH ITEM INDIVIDUALLY.  'X' WILL EXIT FROM 'MOVE'.
10200	
10300	     TYPE '99' AT ANY TIME TO BACKUP WHEN IN 'MOVE', 'COPY', ETC.
10400	
10500	
10600	THE SECOND PROMPT IS:
10700	   TYPE NEW STAFF #, POS1, POS2, UP-DOWN #
10800	
10900	     IF POS2=0, POS1 WILL BE TAKEN AS THE ABSOLUTE 'MOVE' VALUE.
11000	
11100	'COPY' OR 'C' <CR>:  TO COPY GROUPS OF ITEMS.
11200	
11300		WORKS SAME AS 'MOVE' BUT ORGINAL IS LEFT BEHIND.
11400	
11500	'DELETE' OR 'DE' <CR>:  TO DELETE GROUPS OF ITEMS.
11600	
11700		SAME STRUCTURE AS 'MOVE'.
11800	
11900	 *******  N,-99  WILL DELETE ALL LINES EXCEPT! LINE 'N'. 
12000		******** USE WITH GREAT CARE!! *********
12100	
12200	'ALTER' OR 'A' <CR>:  TO ALTER GROUPS OF ITEMS.
12300	
12400		FIRST PART IS SAME AS 'MOVE'.  AFTER THE AREA HAS BEEN
12500		DESIGNATED YOU WILL BE ASKED TO SPECIFY PARAMETER CHANGES
12600		WITH PAIRS OF NUMBERS -- Pn, Change, Pn, Change, etc.
12700	
12710	
12800		IF THE FIRST NUMBER GIVEN IS 12 AND YOU HAVE ALREADY
12900		SPECIFIED CODE NUM 1, ALL NOTE STEMS, BEAMS AND SLURS
13000		IN THE GIVEN AREA WILL BE INVERTED.
13100	
13200		WITH CODE 8 (SLURS), 12 WILL REVERSE THE CURVE AND PUT
13300		IT ON THE "WRONG" SIDE OF THE NOTE.
13310	
13320		IF THE FIRST NUMBER GIVEN IS 13 AFTER CODE NUM.1 HAS BEEN
13330		SPECIFIED THEN ALL NOTES, RESTS AND BEAMS WITHIN THE GIVEN
13340		AREA WILL BECOME "MINIS".  USE THIS FOR MAKING CUES, ETC.
13400	
13410	
13500	'DP' N1, N2, . . . . .: COVERS OR UNCOVERS PARTS OF DISPLAY
13600		END WITH A 99 TO MAKE THE EFFECT IMMEDIATE.
13700	
13800	'J'  WILL AUTOMATICALLY JUSTIFY LINES, ALLOWING PROPER SPACES FOR
13900	       FOR MOST ACCIDENTALS, CLEFS, ETC.  A STAFF NUM >5 WILL JUSTIFY
14000	       ALL LINES AS A UNIT.  IF POS2 = 0, IT WILL BE TAKEN AS 200.
     

00100	--------  SECTION V  ---------
00200	
00300	  'SCORE' ITEMS: NOTES-- 14, STAFF
00400	
00500		144 (INSTEAD OF 14)WILL READ EDIT FILE. SEE BELOW FOR FILE
00600		FORMAT.  THE PROGRAM WILL ASK FOR STAFF NUMBER AND FILE NAME.
00700	
00800	****** THERE ARE 2 INPUT MODES POSSIBLE.  THE 1ST DEALS SEPARATELY
00900		WITH PITCH AND RHYTHM PARAMETERS.  THE 2ND COMBINES THEM
01000		IN ONE INPUT LIST.  ALL THE EXAMPLES BELOW (UNTIL MODE 2
01100		IS MENTIONED) WILL REFER TO MODE 1.
01200			TO USE MODE 2 SET P3 TO 2.  e.g. 14 -3 2
01300	
01700	
01800	****  HOW TO USE "SCORE" ITEMS  ****
01900	
02000		 NOTES ARE TYPED IN ALMOST EXACTLY AS IN THE "SCORE" PROGRAM.
02100	  I.E. S=#, F=b, N=NATURAL (bb AND ## ARE NOT AVAILABLE YET.)
02200	  OCTAVE NUMBERS MUST BE USED.  'P' (FOR PROXIMITY MODE) MAY
02300	  BE USED.  'O' RETURNS TO ORDINARY MODE.
02350	
02400	 R=REST   RI=INVISIBLE REST   RW=WHOLE REST   Rn=WHOLE REST WITH
02450						THE NUMBER n ABOVE IT (UP TO 99).
02460	
02475	ALL OF THESE MUST BE GIVEN TIME VALUES UNDER 'RHYTHM' BUT THE LAST TWO
02575	MAY BE GIVEN ANY RHYTHMIC VALUE DESIRED.
02600	
02700		  TREBLE CLEF IS ASSUMED.  TO ENTER A CLEF, TYPE CLEF NAME 
02800	  FOLLOWED BY A SLASH. (TR/  BA/  AL/  TEN/)   PRECEDED  THE  CLEF
02900	  NAME BY A MINUS SIGN (-BA/) TO HAVE THE AFFECT OF A CLEF WITHOUT
03000	  THE CLEF ACTUALLY APPEARING. (IF NO CLEF IS GIVEN IT WILL ALWAYS
03100	  BE TREBLE CLEF POSITION.)
03200	
03300	USE 'M' (FOR MEASURE) TO ENTER A BAR LINE.  'M2' WILL MAKE A  BAR  GO
03400	UP 2 STAVES; 'M3' WILL GO UP 3 STAVES, ETC.
03500	
03600	  METER (TIME SIGNATURE) MAY BE ENTERED WITH /Tn,m/ WHERE n,m ARE
03700	  THE TOP AND BOTTOM METER NUMBERS.  IN n=99 AND m=1 THE LETTER C WILL
03750		PRINT. (THE 1 MUST! BE THERE.  I.E. /T99 1/ )
03800	
03900	  FOR KEY SIGS TYPE /Kna/ WHERE n=NUMBER OF ACCIDENTALS AND
04000			a='S' OR + FOR SHARPS, OR - OR 'F' FOR FLATS.
04100	
04200	  NO MORE THAN 72 CHARACTERS MAY APPEAR
04300	  ON ONE LINE OF INPUT. (BUT MORE THAN ONE LINE MAY BE USED.)
04400	  THE LINE MUST END WITH A SEMICOLON OR, WHEN NO MORE NOTES ARE
04500	  TO APPEAR, WITH '*'.
04600	
04700		THE MOTIVIC FEATURES OF "SCORE" MAY BE USED WITH INPUT
04800		MODE 1 (BUT WITH NO "NESTING").  MOTIVES ARE SAVED 
04900		WITH DISPLAY DATA AND CAN BE REUSED WHEN WORKING LATER.  
05000	  (NO MORE THAN 200 ITEMS CAN BE SAVED IN ANY  LIST OF MOTIVES.)
05100	
05200	  CHORDS ARE CONSTRUCTED BY USING THE COLON IN PLACE OF THE SLASH
05300	  BETWEEN NOTES.
05400	  THE COLON CAUSES THE NOTE TO OCCUPY THE SAME RHYTHMIC POSITION
05500	  AS THE FIRST NOTE TO APPEAR AFTER A COLON.  THE STEM DIRECTION IN
05600	  CHORDS WILL BE DETERMINED BY THE ORDER OF APPEARANCE OF THE NOTES.
05700	  IF THE FIRST NOTE IS THE LOWEST, THE STEM GOES UP; IF THE FIRST IS
05800	  THE HIGHEST, THE STEM GOES DOWN.  POSITIONING OF NOTES ON PROPER
05900	  SIDE OF STEM AND (IN MOST CASES) SPACING OF ACCIDENTALS AND DOTS
06000	  IS AUTOMATIC.
06050	
06100	   NOTE THAT SINCE ALL THE NOTES OF A CHORD USE ONLY ONE RHYTHM
06200	   ALL REPEAT FEATURES CONSIDER ALL NOTES OF A CHORD AS ONE 
06300	   ENTITY.   / C4 / D:F:A / REP 2 3/  WILL DRAW THE SEQUENCE 
06400	   C, D MINOR CHORD THREE TIMES.  / D:F:A X3/ DRAWS 3 CHORDS.
06500	   / D:F:A //// MAKES 4 CHORDS.
06600	
06700	
06800		ALL NON-RHYTHMIC ITEMS (CLEFS, ETC.) WILL BE IGNORED IN 
06900		REGARD TO THE 1ST NUMBER AFTER 'REP'.
07000		/ C4 / M / D:F:A / REP 2,3 / WILL CONSIDER THE 2 ITEMS
07100		TO BE 'C' AND THE D MINOR CHORD, BUT THE BAR LINE WILL
07200		BE INCLUDED IN THE REPEAT.  THUS THE PROGRAM WILL DRAW
07300		'C', BAR, D MINOR - THREE TIMES.
07400	
07500	  GRACE NOTES MAY BE USED -- SEE UNDER RHYTHM BELOW.
07600	
07700	    TO BY PASS AUTOMATIC STEM DIRECTIONS TYPE SU/ (STEM UP) OR
07800	SD/ (STEM DOWN).  ONCE EITHER OF THESE APPEARS ALL THE STEMS WILL
07900	GO IN THE INDICATED DIRECTION UNTIL A CHANGE IS GIVEN.
07901	
07902	********* NOTE THAT ALL REPEAT FEATURES (X, /, REP) IGNORE 'SD', 'SU'
07904	AND 'M' INDICATIONS.   THUS   M/C4/SD/E/F/M/SU/REP 3/  WILL DISPLAY A
07906	BAR LINE,  C,  E AND F WITH STEMS DOWN, A BARLINE, C WITH STEM UP AND
07908	E AND F WITH STEMS DOWN AND FINALLY ANOTHER  BARLINE.    THE  'REP 3'
07910	SAYS THAT 3 NOTES AND THE THINGS THAT GO WITH THEM WILL BE REPEATED.
07912	
08100	   (INPUT MODE 1)
08200	   EX.  M/BASS/ K4F /T12 8 /C3/EF/E/ M /D X 3/EN2:GS:B/M*
08300	
08400	    A BAR LINE COMES FIRST, THEN BASS CLEF.
08500	    NEXT IS A 4 FLAT KEY SIGNATURE, FOLLOWED BY 12/8 TIME.
08600	    THE 3RD NOTE WILL BE AN 'E' WITH NO ACCIDENTAL.
08700	    A BAR LINE WILL PRECEED THE THREE Ds.
08800	    THE LAST 3 NOTES WILL BE AN E MAJOR CHORD.
08900	    ENDS WITH A BAR LINE.
09000		(In the example above the spaces on either side of the
09100		slashes are optional [to help proof reading].  The other
09200	    	spaces, i.e. in "12 8" and in "D X 3" are required.)
09300	
09400		AFTER THE LAST NOTE HAS BEEN ENTERED THE PROGRAM WILL 
09500	  ASK FOR 'POS1, POS2, (SPC)'.
09600	  THE NOTES WILL BE EVENLY SPACED BETWEEN THE 2 POSITIONS ENTERED.
09700	(<CR>=0,200)  AFTER THE RHYTHM IS ENTERED THE NOTES  WILL  BE  SPACED
09800	EXACTLY  ACCORDING  TO  THEIR  RHYTHMIC  VALUES  IF NO 3RD NUMBER WAS
09900	TYPED. IF A 3RD NUMBER IS ENTERED, THE RHYTHMIC VALUES WILL BE SPACED
10000	ACCORDING  TO  A  PSUEDO-FIBONACCI  SCALE.  I.E. HALF NOTES WILL TAKE
10100	SOMEWHAT LESS THAN TWICE AS MUCH SPACE AS  QUARTERS,  ETC.   ---  USE
10200	THIS  ONLY  FOR  SINGLE-LINE PARTS!!  
10300	
10400	NEXT YOU WILL BE ASKED TO 'TYPE RHYTHM'.
10500	  '99' WILL BACK UP, '999' WILL ESCAPE FROM "SCORE" MODE.
10600	
10700	   A rhythmic duration must be given for each note, rest or 
10800	   chord previously entered. (Clefs, bar lines, etc. should
10900	   ignored.)
10902	
10905	THE MOST COMMON RHYTHMIC VALUES MAY BE  ENTERED  WITH  LETTER  NAMES.
10910	S=SIXTEENTH,  E=EIGHTH,  Q=QUARTER,  H=HALF, W=WHOLE,
10912		 T=TRIPLET(8THS), G=GRACE NOTE (OR 88TH)
10915	THESE ARE THE ONLY! LETTER NAMES  THAT  MAY  BE  USED.   HOWEVER  ANY
10920	RHYTHMIC  VALUE,  NO  MATTER HOW COMPLEX, MAY BE ENTERED IN NUMERICAL
10925	FORM.  16=SIXTEENTH, 10=TEN IN THE TIME OF A WHOLE NOTE, 12=TWELVE IN
10930	THE TIME OF  A  WHOLE  NOTE(THE  NORMAL  TRIPLET), ETC.   NUMBERS AND
10935	LETTERS MAY BE MIXED IF DESIRED.
10940	
10945	SINGLE DOTTED RHYTHMS WILL AUTOMATICALLY PUT  DOTS  ON  NOTES.   MORE
10950	COMPLEX RHYTHMS MUST BE DOTTED INDIVIDUALLY.  (THEY WILL BE CORRECTLY
10955	SPACED.)
11400	
11500	   4 16TH NOTES, A QUARTER, A DOTTED 8TH, 16TH, HALF,
11600	   3 TRIPLETS, AND A WHOLE NOTE FOLLOW:
11700	
11800		16////4/8./16/2/12///1*
11805		(OR: S////Q/E./S/H/T///W* )
11900	
12000		***** NOTE THAT CHORDS WITH WHOLE NOTE RHYTHM WILL APPEAR
12100		      WITH A STEM.  THE STEM IS NEEDED TO INSURE PROPER
12200		      PLACEMENT OF NOTES A SECOND APART.  YOU!! MUST
12300		      REMOVE SUCH STEMS AFTER THE LINE IS COMPLETE!! *****
12400	
12500		**** FOR GRACE NOTES, TYPE 'G' OR RHYTHMIC VALUE OF 88.
12600	
12700	******  INPUT MODE 2 ********  ONLY DIFFERENT FOR NOTES AND RHYTHMS
12800	
12900	   IN THIS CASE EACH NEW RHYTHMIC VALUE MUST BE ENTERED JUST BEFORE
13000	   THE NOTE (OR CHORD) TO WHICH IT WILL APPLY.  REPEAT FEATURES WILL
13100	   ACT IN THE NORMAL WAY.
13200	
13300		TR/4 C4/ D / 8 E/F// 16 G/ A/ 4//REP 4*
13400	   PRODUCES - TREBLE CLEF, QUARTER-C, QUARTER-D, EIGHTH-E,
13500	   2 TIMES 8TH-F, 16TH-G, 16TH-A, QUARTER-A, QUARTER-A, THE LAST 4
13600	   ITEMS (G A A A)REPEAT WITH THEIR GIVEN RHYTHMS.
13700		OF COURSE THERE WILL NOW BE NO PROMPT FOR RHYTHMS.
13800	
13900	
14000		THE NEXT REQUEST IS 'ADD MARKS?' TYPE 'Y', 'N',  99  OR  999.
14100	IF 'YES' GIVE NOTE NUMBERS AND THE ABBREVIATIONS FOR MARK NAMES.  WHEN
14200	COUNTING NOTES, IGNORE RESTS, CLEFS ETC.  CHORDS  COUNT  AS  1  NOTE.
14300	THE ABBREVIATIONS FOR THE ACCENTS, ETC. ARE W(EDGE), A(CCENT),
14400	FE(RMATA), S(TACCATO), T(ENUTO)(DASH), D(OWN BOW), U(P BOW),
14500	H(ARMONIC), PL(US), CR(ESC.), DI(M.), AC(CEL.), R(IT.), C+, C-.
14525	THE LAST TWO LISTED, C+,C-, WILL PRODUCE THE LINEAR CRESC. AND DECRESC.
14537	SIGNS.  WITH THESE TWO ITEMS ONLY! YOU MUST TYPE A SECOND POSITION NUMBER.
14540	
14543	 /1.3  C+  3/	PUTS A CRESC. SIGN FROM BETWEEN  NOTES 1 AND 2 EXTENDING
14546			TO NOTE 3.
14549	
14552	 /.5  C-  3.5/ 	PUTS A DECRESC. SIGN FROM 1/2 WAY BETWEEN  THE POSITION 1
14555	(GIVEN EARLIER) AND NOTE 1 TO A POINT 1/2 WAY BETWEEN NOTES 3 AND 4.
14558	
14561	
14562	THE DYNAMICS, ETC. WHICH MAY BE ENTERED  ARE:
14565	
14568	 PPP, PP, P, MP, MF, F, FF, FFF, CRESC., DIM., ACCEL., RIT.
14571	
14574	ALL THESE MAY BE PUT DIRECTLY UNDER NOTES, OR, BY USING FRACTIONAL NOTE
14577	NUMBERS, BETWEEN NOTES.
14578	
14580		/1.5 PP/  PUTS PP 1/2 WAY BETWEEN NOTES 1 AND 2.
14581	
14584	
14590	UP TO 2 MARKS(I.E. NOT DYNAMICS, ETC.)  MAY BE ENTERED FOR
14600	EACH NOTE -- BUT EACH MARK MUST BE ENTERED SEPARATELY  WITH  ITS NOTE
14700	NUMBER. IN ADDITION TO THE MARKS A DYNAMIC INDICATION, ETC. MAY BE 
14703	ENTERED FOR THE SAME NOTE.
14800	
14900		EXAMPLE:  1 A / 6 A / 7 T / 10 S / 10 W*
15000		 = 1 ACCENT/6 ACCENT/7 TENUTO/10 STACCATO/10 WEDGE ACCENT*
15100	
15150	
15200	     NEXT YOU WILL BE ASKED 'ADD BEAMS?'  TYPE 'Y', 'N' OR nB TO THIS.
15300		nB WILL PLACE BEAMS AUTOMATICALLY. (SEE BELOW)
15400	        '99' WILL BACK UP, '999' WILL ERASE INPUT AND 
15500	        LEAVE "SCORE" MODE.
15600	
15700	        'G' (FOR GO) (INSTEAD OF 'Y' OR 'N') WILL OMIT ALL FURTHER
15800	        PROMPTS IN THIS MODE.
15900	
16000	BEAMS WILL BE ENTERED AUTOMATICALLY  IF  YOU  TYPE  nB*  WHERE  n=THE
16100	NUMBER  OF  EIGHTH  NOTES  TO  BE  BEAMED TOGETHER.  2B* WILL BEAM BY
16200	QUARTERS (I.E. 2 8THS), 3B* GIVES STANDARD BEAMING  FOR  3/8  OR  6/8
16300	TIME.   DECIMAL NUMBERS MAY BE USED FOR N. THUS 1.5B* WOULD BEAM EACH
16400	GROUP OF 3 16THS.
16500	
16600	IF IRREGULAR BEAMS ARE NEEDED, GIVE THE NOTE NUMBERS  FOR  THE  FIRST
16700	AND LAST NOTES UNDER THE BEAMS.  IF THE SECOND NUMBER IS NEGATIVE THE
16800	STEMS FOR THE GROUP WILL GO DOWNWARD.
16900	WHEN COUNTING NOTES, IGNORE RESTS, CLEFS ETC.  CHORDS COUNT AS 
17000	ONE NOTE.
17100	
17200		IF YOU HAVE 4 16TH NOTES (STEMS UP) FOLLOWED BY 2 QUARTERS
17300	 AND  3 8THS (STEMS DOWN) TYPE:
17400	
17500		1,4 / 7  -9 *
17600	
17700	  SOME PARTIAL BEAMS MAY HAVE TO BE ADDED INDIVIDUALLY AS YET.
17800	
17900	      ****** AUTOMATIC BEAMS ****** IN MOST SIMPLE SITUATIONS ALL THE
18000	      BEAMS MAY BE PLACED AUTOMATICALLY BY SIMPLY TYPING "2B*". (OR
18100	      "3B*")   2B* WILL CAUSE ALL LOGICAL BEAM CONNECTIONS TO BE MADE
18200	      IN TERMS OF DUPLE RHYTHM.  USE 3B* FOR TRIPLE RHYTHMS SUCH AS
18300	      3/8, 6/8, 9/8, ETC.  THE BASIC UNIT FOR 2B* IS THE QUARTER NOTE
18400	      AND THE BASIC UNIT FOR 3B* IS THE DOTTED QUARTER.
18500	
18600	
18700	    LASTLY YOU WILL BE ASKED 'ADD SLURS?'  
18800	    TYPE 'Y' OR 'N'. TO THIS.
18900	
19000	IF SLURS ARE ADDED, THE ORDER NUMBERS OF THE NOTES AT  THE  BEGINNING
19100	AND  END OF THE SLUR MUST BE GIVEN.  IF THE SECOND NUMBER IS NEGATIVE
19200	THE 'DIP' WILL BE DOWNWARD AND THE STEMS WILL GO UP.  VICE-VERSA  FOR
19300	A  POSITIVE  SECOND  NUMBER.   IF YOU HAVE USED THE 'B' FEATURE ABOVE
19400	(AUTOMATIC BEAMS) THEN THE NEGATIVE AND POSITIVE DIPS  WILL  ALSO  BE
19500	AUTOMATIC - HENCE NO NEED TO USE ANY NEGATIVE NUMBERS AT THIS POINT.
19600	
19700		THE AMOUNT OF CURVE WILL DEPEND ON THE CONFIGURATION  OF  THE
19800	NOTES  BETWEEN  THE END POINTS.  IN EXTREME SITUATIONS IT IS PROBABLE
19900	THAT THE RESULT OF THIS AUTOMATIC PROCEDURE WILL HAVE TO BE EDITED.
20000	
20100		A TYPICAL EXAMPLE OF INPUT:   2,-3/ 2,-7/ 8,11*
20200	
20300			THIS WILL PUT SLURS FROM 2ND TO 3RD NOTE, 2ND TO 7TH
20400			AND 8TH TO 11TH.
20500	
20600	TO  SLUR  INTO THE 1ST NOTE, TYPE -1,1/ OR -1, -1/.  TO SLUR OUT FROM
20700	THE LAST NOTE, TYPE N,99* OR N,-99* WHERE N=NUMBER OF LAST NOTE.
20800	
21700	  ***** NOTE THAT TIES BETWEEN THE INNER NOTES OF TWO CHORDS CANNOT
21800		BE DONE AUTOMATICALLY AS YET.
21900	
22000	TO MAKE NUMBERED BRACKETS (FOR TRIPLETS, ETC.) INSTEAD OF SLURS, TYPE
22100	THE  NUMBER  (ONE  DIGIT ONLY) DESIRED TO THE RIGHT OF THE DECIMAL OF
22200	THE FIRST OF A PAIR.  THUS TO PUT A BRACKETED 3 OVER NOTES  7  TO  9,
22300	TYPE  7.3  9/ .   AS WITH SLURS, THE SECOND NUMBER MAY BE NEGATIVE TO
22400	GET A DOWNWARD BRACKET.
22500	
22600	
22700	∞∞∞∞∞ FOR 'BEAMS', 'MARKS' AND 'SLURS' A 2ND LINE OF INPUT MAY BE
22800		GIVEN IF THE 1ST LINE ENDS WITH ';' INSTEAD OF '*'.
22900	
23000		ALL ITEMS ENTERED UNDER '14' MAY BE EDITED LATER AS IF THEY
23100	  WERE ENTERED INDIVIDUALLY.
23200	
23300	FOR CODE # 144:  FOLLOWING IS THE FILE FORMAT FOR "SCORE" INPUT FROM
23400	   AN EXTERNALLY EDITED FILE.  THE NAME OF THE FILE CAN HAVE NO MORE
23500	   THAN FIVE LETTERS.
23600	
23700		00100   (NOTES) . . . *
23800		00200   (RHYTHM) . . . *
23900		00300   (ACCENTS) . . *  BLANK LINE = NO MARKS
24000		00400   (BEAMS) . . * A BLANK LINE = NO BEAMS
24100		00500   (SLURS) . . *  BLANK LINE = NO SLURS
24200	
24300		(2ND LINES MAY BE ADDED WITH ALL ITEMS EXCEPT RHYTHM.)
24400	
24500	    THIS SEQUENCE MAY BE REPEATED SEVERAL TIMES.  THE PROGRAM WILL
24600	    ASK FOR EACH OF THE STAFF NUMBERS.
24700	
24800	
24900	****  SUMMARY OF SCORE CODES ****
25000	
25100	NOTES 		A-G
25200	ACCIDENTALS	F-S-N
25300	REST		R, RI FOR INVISIBLE REST, RW FOR WHOLE REST ALWAYS.
25400	CLEFS		TR-BA-AL-TE    -TR, -BA, ETC. =INVISIBLE CLEF
25500	BAR, MEASURE	M
25600	KEY SIG.	KnS OR KnF
25700	METER,TIME SIG.	Tn,m
25800	STEM DIRECTION	SU-SD
25900	iXn		REPEAT ITEM i A TOTAL OF n TIMES.
26000	REP n,m		REPEAT LAST n ITEMS A TOTAL OF m TIMES.
26003	Xn m		SAME AS REP.
26100	ACCENT		A
26200	WEDGE		W
26300	TENUTO		T
26400	STACCATO	S
26500	HARMONIC	H
26600	FERMATA		FE
26700	DOWN BOW	D
26800	UP BOW		U
26900	+(PLUS)		PL
27000	THESIS		TH		
27100	ARSIS		AR
27200	MORDANT		MO
27300	INV. MORD.	I
27400	TRILL		TR
27403	PPP, PP, P, MP, MF, F, FF, FFF
27406	CRESC.		C
27409	ACCEL.		AC
27412	DIM.		DI
27415	RIT.		R
27418	< (CRESC.)	n1 C+ n2
27421	> (DECRESC.)	n1 C- n2
     

00100	---------  SECTION VI  -----------
00200	
00300	********* TO SET UP AUTOMATIC IRREGULAR RHYTHMIC SPACING *******
00400	---- TYPE 444,n  to setup STAFF n as basis for automatic spacing. ---
00500	
00600		ANY  NOTES WHICH APPEAR ON STAFF n WILL CAUSE ALL ITEMS LATER
00700	ENTERED WITH '14' OR '144' TO BE  SPACED  ACCORDING  TO  THE  SPACING
00800	GIVEN  ON  STAFF n. 
00900	
01800		 ALL FURTHER LINES ENTERED WILL CONFORM TO THE SPACING ON
01810		 STAFF n UNLESS THE STAFF IS DELETED OR 444 IS AGAIN TYPED,
01950		 FOLLOWED BY SOME NEW NUMBER.
01960	
01970	    ------N.B. IF ANY EDITING OF STAFF n IS DONE BE SURE THAT THE 
01980		SPACE VALUES IN P9 OF NOTES OR P7 OF RESTS IS CORRECT.  THE
01990		AUTOMATIC SPACING IS BASED ON THESE VALUES.  THE VALUES ARE
02000		SET WHEN '14' OR '144' IS USED.  THE BASIC VALUE IS ONE
02010		QUARTER=1.  HALF=2, WHOLE=4, EIGHTH=.5, SIXTEENTH=.25, ETC.
02020	
02030		NOTE THAT 444 MUST BE RESET AFTER ANY RESTART OR WHEN
02040		RE-RUNNING THE PROGRAM.
02050	
02100	  IT IS BEST TO ACCOUNT FOR ALL BAR LINES, CLEFS, METERS, ETC.
02200	
02500	
02600	IN GENERAL, IT IS PROBABLY BETTER TO USE MANY SMALL VALUES ON 
02700	STAFF n.  THIS WAY IT IS EASIER TO MAKE MANY DELICATE ADJUSTMENTS.
02800	
02900	*******   PARTS   ********
03000	
03800	
03900		WHEN  ASKED "TYPE TOP STAFF #", GIVE THE HIGHEST STAFF NUMBER
04000	YOU WANT USED FOR THIS SECTION OF THE PART INVOLVED.  IF YOU TYPE "2"
04100	THE LINES 2, 1, 0, ETC. WILL BE USED UNTIL BUFFER SPACE IS EXHAUSTED.
04200	
04210		THE NEXT PROMPT WILL BE 'TYPE INPUT NAME, (CONT.),  (NOBAR)'.
04220	TYPE  THE  NAME OF THE FIRST FILE OF THE FULL SCORE TO BE READ.  IF A
04230	NUMBER(>0) IS  TYPED  AFTER  THE  NAME  THE  READ-IN  PROCEDURE  WILL
04240	CONTINUE  ON  TO THE NEXT FILE NAME, ALPHABETICALLY, AND WHEN NO MORE
04250	ARE FOUND IT WILL EXIT.
04260	ORDINARILY THE BAR LINES OF THE FULL SCORE ARE  PICKED  UP  FOR  EACH
04262	INSTRUMENTAL  PART.  TO OMIT THESE BARLINES TYPE ANY NUMBER(>0) AFTER
04264	THE 'CONT.' NUMBER.
04280	
04300		THE  NEXT  PROMPT  WILL  BE,  'INST.  NAME?' THIS ASSUMES THE
04400	ORIGINAL SCORE HAS INSTRUMENT NAMES TYPED IN P9 FOR EACH  STAFF  (SEE
04500	CODE 2, PG.2). BE SURE YOUR INSTRUMENT NAMES DO NOT EXCEED 5 LETTERS.
04600	IF  NO  INST. NAMES WERE GIVEN BUT THE PART TO BE EXTRACTED IS ALWAYS
04602	ON THE SAME STAFF, THIS STAFF NUMBER MAY BE GIVEN AS THE INST. NAME.
04604	
04700		THE NEXT PROMPT WILL  BE  'TRANS. NUM--'.  ANSWER THIS BY  THE
04800	NUMBER OF NOTE STEPS (NOT 1/2 STEPS!) TO BE TRANSPOSED.
04900	
05000	THE  MESSAGE  "NO  ROOM  FOR THIS ONE" MEANS THE BUFFER DOES NOT HAVE
05100	ROOM LEFT  FOR  ANOTHER  COMPLETE  LINE.   THIS  LAST  LINE  WILL  BE
05200	COMPLETELY IGNORED.  THEN YOU MUST START ANOTHER FILE.
05300	
05400	TRANSPOSITIONS FOR "Bb" INSTRUMENTS  AND  FOR  "F"  INSTRUMENTS  WILL
05500	AUTOMATICALLY FIX MOST OF THE NEEDED CHANGES IN ACCIDENTALS.  HOWEVER
05600	THERE ARE MANY CASES WHERE WRONG RESULTS MIGHT OCCUR  (SUCH  AS  WITH
05700	NOTES  TIED  OVER  BAR  LINES,  ETC.)  SO  CAREFUL  PROOF  READING IS
05800	ESSENTIAL.
05900	
06000	*****   PAK  (PACK AND UNPACK)  *****    FOLLOW THE PROMPTS.
06002	
06102	THIS  IS  A PROGRAM TO PACK SEVERAL MSS.DAT FILES INTO ONE FOR EASIER
06104	STORAGE. IF 'L' IS TYPED AS THE FIRST RESPONSE,  THE  CONTENTS  OF  A
06106	PACKED FILE WILL BE LISTED ON THE DISPLAY.
06108	
06110	THE SECOND PROMPT IS 'TYPE FILE NAME'.  IF NO NUMBER FOLLOWS THE NAME
06112	THE  PROGRAM  WILL  TRY  TO   CONTINUE   READING   FILE   NAMES,   UP
06114	ALPHABETICALLY  FROM THE GIVEN NAME.  WHEN NO MORE ARE TO BE FOUND IN
06116	THAT SEQUENCE, THE PROMPT WILL BE GIVEN AGAIN AND A NEW SET OF  FILES
06118	CAN  BE  ADDED.   THIS  WORKS ONLY FOR NAMES OF EXACTLY 5 CHARACTERS.
06120	SHORTER NAMES MUST BE READ IN ONE AT A TIME -- AND TO  DO  THIS,  THE
06122	NUMBER  1  MUST  COME  AT LEAST 5 SPACES AFTER THE START OF THE LINE!
06124	WHEN NO MORE NAMES ARE TO BE ADDED, HIT 'RETURN'.
06126	
06128	WHEN UNPACKING, THE PROMPT 'GET WHICH FILE?' WILL APPEAR.  IF YOU HIT
06130	'RETURN' ALL NAMES IN THE FILE WILL BE UNPACKED.  IF A NAME IS GIVEN,
06132	ONLY THAT ONE WILL BE UNPACKED.  IF A NUMBER  FOLLOWS  THE  NAME  (AT
06134	LEAST  5  SPACES IN) A TOTAL OF THAT NUMBER OF FILES WILL BE UNPACKED
06136	BEGINNING WITH THE GIVEN NAME.
06138	
06140	WHEN FILES ARE ADDED TO A PACKED FILE THEY ARE SIMPLY  ADDED  ON  THE
06142	END.   IF  THE NAME GIVEN IS ALREADY THERE, THE EARLIER NAME WILL NOT
06144	BE DELETED.  THUS WHEN THEY ARE UNPACKED THE EARLY  VERSION  OF  THAT
06146	NAME MUST BE IGNORED.
     

00100	INDEX TO SUBROUTINES:
00200	
00300	    FILE NAME:
00400	
00500		FORTRAN PROGRAMS:
00600	
00700		MSS
00800		NOTWRT	NOTWRT
00900	
01000		ITMSUB	ITMSUB
01100			BMS
01200			METER
01300			RNOTE
01400			MAKNUM
01500	
01600		PLTSRT	SLUR
01700			PLTSRT
01800			BOX
01900			HOMER
02000			SCL
02050			FORMAT
02100	
02200		MOVER
02300	
02400		CLEFS
02500	
02600		GRED	VLINE
02700			ASKIT
02800			GRED
02900			LPEN
03000			DELETE
03100			PLTCMD
03200			SAVIT
03300			LISTP
03400			FIXUP
03500	
03600		XREST	ALPHA
03700			TAIL
03800			REST
03900			BREP
04000			FERMTA
04100			PNUM
04200			SPACER
04300			KSIG
04400	
04500		WORDS 	WORDS
04600			TYPE
04700			SETLET
04800	
04900		SCANR	SCANR
05000			NALF
05100			EDIT
05200			PRESCN
05300	
05400		SCMSS	
05500	
05600		RHYTH	RHYTH
05700			SETUP
05800			MARKS
05900			DOTS
06000	
06100		NOTBMS	NOTES
06200	
06300		BEAMS	BEAMS
06302			SLEND
06305			POSIT
06400	
06500		PREFIL	FILLMS
06600			ROTATE
06700	
06800		COPYIT	COPYIT
06900			STFCH
07000			UPDN
07100	
07200		FAIL PROGRAMS:
07300	
07400		LOOP	LOOP
07500			FINDIT
07600			PLACE
07700			DPYNEW
07800			MVBEAM
07900			MVBX
08000			JUGGLE
08100			XNOTE
08200			BAUTO
08300			SORT2
08400			UPDATE
08500			NEWR
08600	
08700		SLOOP	RNOTE
08800			DRWNT
08900			RDRAW
09000			SLOOP
09100			CIRCLE
09200			PSRT
09250			RUNTHR
09300	
09400		FILL	FILLER
09500			LINES
09600	
09700		SMALL	RJBX
09800			CENTX
09900			EXTEN
10000			JDRAW
10100			CENTER
10200			LINX
10300			UNPACK
10400			ROFF
10500			NOIR
10600			NOZERO
10700			EXCH
10800			BMS
10900			IABS
11000			ABS
11100			RHORZ
11200			RTLINE
11300			FLOAT
11400			IFIX
11500	
11600		MOVE	MOVIT
11700			GETPTS
11800			OUTLIM
11900	
12000		MSSIO	GETFI2
12100			FASTI2
12200			LOOK
12300			LOOKD
12400			LOOKF
12500			(PAC)
12600			(UNPAC)
12700	
12800	FILES FOR PLOTTER AND XGP OUTPUT.
12900	
13000		MPRNT
13100		PPSRT	SLUR
13200			PLTSRT
13300			CLEFS
13400	
13500		PLTIT	PLTCMD
13600			FILLMS
13700			ROTATE
13800	
13900		SMALLX	RJBX
14000			CENTX
14100			EXTEN
14200			JDRAW
14300			CENTER
14400			LINX
14500			UNPACK
14600			ROFF
14700			NOIR
14800			NOZERO
14900			EXCH
15000			BMS
15100			IABS
15200			ABS
15300			RHORZ
15400			RTLINE
15500			FLOAT
15600			IFIX
15700	
15800		FILLX	FILLER
15900			LINES
16000			PLOT
16100			(PLOTS)
     

00100	***** PRNTX.DO ******   (PREPARES FILE FOR 'PLOTIT.F4')
00200	LOA MP←/DUMP %DMPRNT,SLOOP,SMALLX,NOTWRT,ITMSUB,XREST,
00300	PPSRT,FILLX,PLTIT,MSSIO↔
00400	
00500	
00600	***** PRNTC.DO ******   (GOES DIRECTLY TO CALCOMP)
00700	LOA MC←/DUMP MPRNT,NOTWRT,ITMSUB,FILLER,MSFAIL,PPSRT,TREST,PLTC↔
00800	
00900	XXXXXX DOMS.DO XXXXXX(TO GET NECESSARY BASIC DATA READ IN BEFORE DUMP.)
01000	LOA MM←/DUMP @DDTMSS[1,LCS]↔AL Y↔S↔G↔INIT↔βAL↔SA MM↔
01100	
01200	
01300	********  ZZ.DO  ******
01400	LOA @ZZ↔βSA MM↔
01500	
01600	********* RR.CMD  ********
01700	MSS,LOOP,SMALL,MOVER,GRED,NOTWRT,ITMSUB,WORDS,SLOOP
01800	,XREST,SCMSS,SCANR,MSSIO,PLTSRT,COPYIT,CLEFS,MOVE
01900	,NOTBMS,BEAMS,RHYTH,FILL,PREFIL[MSS,LCS],CURSOR.REL[MSS,LCS]